home *** CD-ROM | disk | FTP | other *** search
/ Aminet 43 / Aminet 43 (2001)(GTI - Schatztruhe)[!][Jun 2001].iso / Aminet / util / moni / SnoopDos_Src.readme < prev    next >
Text File  |  2001-05-03  |  8KB  |  161 lines

  1. Short:    SnoopDos 3.7 sources
  2. Author:   ecarroll@maths.tcd.ie (Eddy Carroll)
  3. Uploader: thor@math.tu-berlin.de (Thomas Richter)
  4. Type:     util/moni
  5. Replaces: snoopdos34_src.lha
  6.  
  7. ------------------------------------------------------------------------------
  8.  
  9.              SnoopDos 3.6 -- System and application monitor
  10.  
  11.      Copyright © Eddy Carroll, September 1994. Freely distributable.
  12.  
  13.      Updated on January 2000 by Luca Longone and Massimo Tantignone
  14.                 with permission of the original author.
  15.  
  16.      Updated again on March 2000 by Grzegorz Chmie and Thomas Richter.
  17.  
  18.      Updated to 3.6 on Febrary 2001 by Thomas Richter
  19.  
  20.      Updated to 3.7 on March/April 2001 by Thomas Richter
  21.  
  22.  
  23.  * VERY IMPORTANT NOTE: this archive contains an updated version of the
  24.  * SnoopDos executable, with the version number bumped to 3.6. This was
  25.  * NOT made by the original SnoopDos author, Eddy Carroll, but instead
  26.  * by Luca Longone and Massimo Tantignone, and Grzegorz Chmie 
  27.  * and Thomas Richter (with Eddy Carroll's approval).
  28.  *
  29.  *
  30.  * NOTE ABOUT THE 3.7 UPDATE
  31.  *
  32.  * The 3.7 release fixes mainly some cosmetic issues. First of all, the
  33.  * semaphore arbitration time changed from 3.6 to 3.7 and was chosen much
  34.  * smaller, and was made dependent on task priorities. Even though the 3.6
  35.  * should not have deadlocked ever, it might have happened that the System
  36.  * appeared frozen for half a minute due to lots of semaphore timeouts.
  37.  * Furthermore, the 3.7 adds Forbid()/Permit() around FindTask() and FindPort();
  38.  * they are not really required as the corresponding tasks and ports cannot
  39.  * go away in any event, but PatchWork complained about it with a warning.
  40.  *
  41.  * NOTE ABOUT THE 3.6 UPDATE
  42.  *
  43.  *  Note that there's no 3.5 update, it was an internal release that never
  44.  *  made it to the public.
  45.  *  The 3.6 update fixes two major bugs. The first bug is that the LoadSeg()
  46.  *  patch did not kept care about overlayed files and therefore might have
  47.  *  trashed overlayed programs. Note that LoadSeg() takes actually three
  48.  *  arguments and not one!
  49.  *  The second bug is even more severe, and is only partially fixed by this
  50.  *  release. SnoopDos semaphore handling was and still is extremly fragile.
  51.  *  SnoopDos 3.4 and before could have run into a race condition caused by
  52.  *  a cycling semaphore lock-up of three partners the patch code did not and
  53.  *  cannot check for. SnoopDos, workbench and input device hung then
  54.  *  simultaneously.
  55.  *  There are other race conditions of this kind, and all of them could only
  56.  *  be fixed if the patch code of SnoopDos would be completely re-designed,
  57.  *  a job I currently cannot and will not do.
  58.  *  Therefore, SnoopDos 3.6 contains a workaround and uses now a semaphore
  59.  *  mechanism which may "time out". The net effect is that at least the most
  60.  *  common semaphore deadlock should be avoidable now, but at the price that
  61.  *  the SnoopDos main window cannot be guaranteed to be 100% accurately up-
  62.  *  dated. Hence, in case the main window seems to have forgotten to update
  63.  *  its snoop list, or the result codes of some snoop entries are missing, or
  64.  *  some reports seem to be missing at all, don't worry! The alternative in 
  65.  *  these cases would have been to deadlock your system. As a side effect,
  66.  *  the ugly layers semaphore check was disabled now as it is no longer
  67.  *  needed, and in fact never really worked as it was unable to detect a
  68.  *  cyclic deadlock of three or more partners.
  69.  *
  70.  * NOTE ABOUT THE 3.4 UPDATE
  71.  *
  72.  * This update fixes one feature, and one bug. The feature is that the
  73.  * stack swap code was removed from SnoopDos 3.2 and up, and since people
  74.  * tend not to read the instructions, SnoopDos crashed on some machines due
  75.  * to stack overflow. The 3.4 release checks therefore for its stack size
  76.  * and will increase it to the minimal recommended size.
  77.  * The bug is that a possible race condition when closing the main window
  78.  * was overlooked. The 3.3 and earlier releases could have caused some
  79.  * "hits" in case the main window was closed while some other program run
  80.  * in the patch routines.
  81.  *
  82.  * Additional note: SnoopDos seems to cause some hang-ups if run under
  83.  * CyberGraphics. This is maybe because CGfx does not use the native Amiga 
  84.  * layer system, or uses it in a way different than the Os would. There is
  85.  * nothing I can do against this, currently. It works fine for the native
  86.  * graphics and the P96 software.
  87.  *
  88.  *
  89.  * NOTE ABOUT THE 3.3 UPDATE
  90.  *
  91.  * This update fixes a flaw of the 3.2 release that somehow was unnoticed.
  92.  * The 3.2 release could not be run from Workbench, due to an unexpected
  93.  * re-define of the WBenchMsg variable to _WBenchMsg in some of the SAS/C
  94.  * headers which broke the new startup code. I really did not expect 
  95.  * this, sorry. Except the version number, and a slightly different compiler
  96.  * option, nothing changed.
  97.  *
  98.  * The 3.2 update was made to remove one additional frequent enforcer hit
  99.  * that appeared when the snoopdos patches have been called in the middle
  100.  * of a graphics operation. In that case, RastPort->Layer is NULL'd and
  101.  * the code didn't check. Fixed.
  102.  * Another improvement is that SnoopDos accepts now "NewIcons" style
  103.  * icons correctly for iconification.
  104.  * General house keeping work has been done, one header file has been
  105.  * enlarged to include all the required prototypes, and the code was 
  106.  * recompiled with the registerized parameter option, making it quite
  107.  * noticably shorter. (And maybe quite unnoticably faster as well :-)
  108.  *
  109.  * For the more suspicious people, the updated source code is on Aminet
  110.  * as well (util/moni/snoopdos32_src.lha). 
  111.  *
  112.  * The SnoopDos executable was recompiled for the plain 68000 again because
  113.  * I do not see the point why to go for an 68020 if it is not necessary.
  114.  * The code shrunk anyhow and I do not notice a speed improvement by using
  115.  * the 68020 switch.
  116.  *
  117.  * The original SnoopDos 3.0 documentation is included in this update
  118.  * without any modification, but please note that all references to PGP
  119.  * can't be applied to this update. If you need confirmation about the
  120.  * genuine nature of this update you can ask us or the original author.
  121.  *
  122.  * Luca Longone:       llong@tin.it, hexaee@tiscalinet.it
  123.  * Massimo Tantignone: tanti@intercom.it
  124.  * Grzegorz Chmie:     gchmiel@pnet.pl
  125.  * Thomas Richter:     thor@math.tu-berlin.de
  126.  * Eddy Carroll:       ecarroll@iol.ie
  127.  
  128.  
  129. ============================= Archive contents =============================
  130.  
  131. Original  Packed Ratio    Date     Time    Name
  132. -------- ------- ----- --------- --------  -------------
  133.     8659    3721 57.0% 12-Apr-01 21:50:02 +Readme.source
  134.    45282   11817 73.9% 12-Apr-01 21:40:52 +buffer.c
  135.     2623    1094 58.2% 12-Apr-01 21:40:58 +gui.h
  136.    18349    4747 74.1% 12-Apr-01 21:40:52 +hotkey.c
  137.     3453    1303 62.2% 12-Apr-01 21:40:58 +icon.h
  138.     2612    1200 54.0% 12-Apr-01 21:40:52 +language.c
  139.   250809   53687 78.5% 12-Apr-01 21:40:52 +mainwin.c
  140.     2555     925 63.7% 05-Mar-00 23:14:38 +makefile
  141.    32871   11418 65.2% 12-Apr-01 21:40:54 +miscwin.c
  142.     5168    2163 58.1% 17-Sep-94 18:08:40 +patchcode.s
  143.   213479   46771 78.0% 12-Apr-01 21:40:54 +patches.c
  144.     5007    1236 75.3% 12-Apr-01 21:40:58 +patches.h
  145.       97      83 14.4% 05-Mar-00 23:28:06 +Project-Startup
  146.      312     189 39.4% 05-Mar-00 23:13:22 +scoptions
  147.    84449   19069 77.4% 12-Apr-01 21:40:54 +settings.c
  148.    23114    5534 76.0% 12-Apr-01 21:40:54 +snoopdos.c
  149.    64113   15670 75.5% 12-Apr-01 21:40:58 +snoopdos.h
  150.    21021    7900 62.4% 05-Mar-00 23:31:06 +SnoopDos.Roadmap
  151.    19179    6820 64.4% 05-Aug-00 13:54:02 +snooptext.cd
  152.    14162    5182 63.4% 05-Aug-00 13:54:04 +snooptext.ct
  153.    76363   15770 79.3% 12-Apr-01 21:40:58 +snooptext.h
  154.   184820   37682 79.6% 12-Apr-01 21:40:54 +subwin.c
  155.      280     192 31.4% 12-Apr-01 21:40:56 +system.c
  156.     2150     549 74.4% 12-Apr-01 21:40:58 +system.h
  157.    10709    3032 71.6% 12-Apr-01 21:40:56 +testcalls.c
  158.     6380    2834 55.5% 12-Apr-01 21:51:40 +SnoopDos_Src.readme
  159. -------- ------- ----- --------- --------
  160.  1098016  260588 76.2% 25-Apr-101 20:22:56   26 files
  161.